## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.4.0 ✔ purrr 0.3.5
## ✔ tibble 3.1.8 ✔ dplyr 1.0.10
## ✔ tidyr 1.2.1 ✔ stringr 1.4.1
## ✔ readr 2.1.3 ✔ forcats 0.5.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::between() masks data.table::between()
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::first() masks data.table::first()
## ✖ dplyr::lag() masks stats::lag()
## ✖ dplyr::last() masks data.table::last()
## ✖ purrr::transpose() masks data.table::transpose()
##
## Please cite as:
##
##
## Hlavac, Marek (2022). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##
## R package version 5.2.3. https://CRAN.R-project.org/package=stargazer
Here, we examine participant demographics, such as their age and gender, in addition to information about their work industry and experience. Overall, our sample is highly skewed in terms of gender. A representative average participant would be a man who works in a relatively large technology company with some years of experience.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Selecting by ct
ggplot(pt_info, aes(x = age))+
geom_histogram(bins = 30, aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
labs(title = "Distribution of Participant Age",
subtitle = "Age was relatively similar across conditions.",
x = "Age",
y = "Count")+
facet_grid(Condition ~ .)+
theme(strip.text.y = element_text(angle = 0))
pt_info %>%
group_by(Condition) %>%
summarise(avg_age = mean(age))
## # A tibble: 4 × 2
## Condition avg_age
## <chr> <dbl>
## 1 Man_Nontraditional 38.7
## 2 Man_Traditional 39.3
## 3 Woman_Nontraditional 41.4
## 4 Woman_Traditional 38.9
ggplot(pt_info, aes(x = as.factor(gender)))+
geom_bar(stat = "count", position= "dodge", aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
scale_x_discrete(limits = c("Man", "Woman", "Non-binary / third gender", "Prefer not to say"))+
labs(title = "Distribution of Participant Gender and Condition",
subtitle = "Gender was relatively similar across conditions.",
x = "Reported Gender",
y = "Count")
industry_dist <- ggplot(industry_df %>% top_n(10) , aes(x = factor(industry, levels = industry), y = ct))+
geom_bar(stat = "identity", aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))+
labs(title = "Distribution of Participant Industry",
subtitle = paste0(
round(subset(industry_df, industry == "Technology")$ct / nrow(pt_info), 2) * 100,
"% of participants work in Tehcnology"
),
x = "Industry Area",
y = "Count")
## Selecting by ct
ggplot(pt_info, aes(x = factor(str_replace_all(company_size, " employees", ""),
levels = c("Less than 50",
"50-100",
"100-500",
"500-1,000",
"1,000+"))))+
geom_bar(stat = "count", position = "dodge", aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
labs(title = "Distribution of Participant Company Size",
subtitle = "Number of employees",
x = "Company Size",
y = "Count")
chisq.test(pt_info$company_size, pt_info$Condition)
##
## Pearson's Chi-squared test
##
## data: pt_info$company_size and pt_info$Condition
## X-squared = 7.8454, df = 12, p-value = 0.7971
ggplot(pt_info, aes(x = factor(experience,
levels = c("Less than 1 year",
"1-2 years",
"3-5 years",
"5-10 years",
"10+ years"))))+
geom_bar(stat = "count", aes(fill = Condition), position = "dodge", alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
labs(title = "Distribution of Participant Work Experience",
subtitle = "",
x = "Years of Experience",
y = "Count")
chisq.test(pt_info$experience, pt_info$Condition)
##
## Pearson's Chi-squared test
##
## data: pt_info$experience and pt_info$Condition
## X-squared = 6.2959, df = 12, p-value = 0.9004
ggplot(pt_info, aes(x = risk))+
geom_bar(stat = "count", aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
labs(title = "Distribution of Participant Risk Aversion",
x = "Average Response to Risk Items",
y = "Count")+
facet_grid(Condition ~.)+
theme(strip.text.y = element_text(angle = 0))
pt_info_dt <- data.table(pt_info)
# check for gender treatment
pt_info_dt[, applicant_gender_bin := ifelse(Condition == "Man_Traditional" | Condition == "Man_Nontraditional",
0, 1)]
null_gender_mod <- pt_info_dt[, lm(applicant_gender_bin ~ 1)]
full_gender_mod <- pt_info_dt[ , lm(applicant_gender_bin ~ 1 +
age +
gender +
company_size +
factor(experience,
levels = c("Less than 1 year",
"1-2 years",
"3-5 years",
"5-10 years",
"10+ years"))+
factor(str_replace_all(company_size, " employees", ""),
levels = c("Less than 50",
"50-100",
"100-500",
"500-1,000",
"1,000+"))
)]
anova(null_gender_mod, full_gender_mod)
## Analysis of Variance Table
##
## Model 1: applicant_gender_bin ~ 1
## Model 2: applicant_gender_bin ~ 1 + age + gender + company_size + factor(experience,
## levels = c("Less than 1 year", "1-2 years", "3-5 years",
## "5-10 years", "10+ years")) + factor(str_replace_all(company_size,
## " employees", ""), levels = c("Less than 50", "50-100", "100-500",
## "500-1,000", "1,000+"))
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 299 74.997
## 2 287 71.967 12 3.0301 1.007 0.4424
# check for education treatment
pt_info_dt[, applicant_education_bin := ifelse(Condition == "Man_Traditional" | Condition == "Woman_Traditional",
0, 1)]
null_education_mod <- pt_info_dt[, lm(applicant_education_bin ~ 1)]
full_education_mod <- pt_info_dt[, lm(applicant_education_bin ~ 1 +
age +
gender +
company_size +
factor(experience,
levels = c("Less than 1 year",
"1-2 years",
"3-5 years",
"5-10 years",
"10+ years"))+
factor(str_replace_all(company_size, " employees", ""),
levels = c("Less than 50",
"50-100",
"100-500",
"500-1,000",
"1,000+"))
)]
anova(null_education_mod, full_education_mod)
## Analysis of Variance Table
##
## Model 1: applicant_education_bin ~ 1
## Model 2: applicant_education_bin ~ 1 + age + gender + company_size + factor(experience,
## levels = c("Less than 1 year", "1-2 years", "3-5 years",
## "5-10 years", "10+ years")) + factor(str_replace_all(company_size,
## " employees", ""), levels = c("Less than 50", "50-100", "100-500",
## "500-1,000", "1,000+"))
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 299 75.000
## 2 287 73.551 12 1.4489 0.4711 0.9306
# check for interaction treatment
pt_info_dt[, applicant_interaction_bin := ifelse(Condition == "Woman_Nontraditional",
1, 0)]
null_interaction_mod <- pt_info_dt[, lm(applicant_interaction_bin ~ 1)]
full_interaction_mod <- pt_info_dt[, lm(applicant_interaction_bin ~ 1 +
age +
gender +
company_size +
factor(experience,
levels = c("Less than 1 year",
"1-2 years",
"3-5 years",
"5-10 years",
"10+ years"))+
factor(str_replace_all(company_size, " employees", ""),
levels = c("Less than 50",
"50-100",
"100-500",
"500-1,000",
"1,000+"))
)]
anova(null_interaction_mod, full_interaction_mod)
## Analysis of Variance Table
##
## Model 1: applicant_interaction_bin ~ 1
## Model 2: applicant_interaction_bin ~ 1 + age + gender + company_size +
## factor(experience, levels = c("Less than 1 year", "1-2 years",
## "3-5 years", "5-10 years", "10+ years")) + factor(str_replace_all(company_size,
## " employees", ""), levels = c("Less than 50", "50-100", "100-500",
## "500-1,000", "1,000+"))
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 299 56.250
## 2 287 52.968 12 3.282 1.4819 0.13
Here, we examine some basic information about how ratings for different applicants varied.
average_ratings <- analysis %>%
group_by(Condition) %>%
summarise(avg_rating = mean(rating),
standard_dev = sd(rating),
max = avg_rating+ standard_dev,
min = avg_rating - standard_dev,
n = n())
average_ratings
## # A tibble: 4 × 6
## Condition avg_rating standard_dev max min n
## <fct> <dbl> <dbl> <dbl> <dbl> <int>
## 1 Man_Traditional 7.60 1.47 9.07 6.14 243
## 2 Man_Nontraditional 7.18 1.99 9.17 5.19 258
## 3 Woman_Nontraditional 7.21 1.79 9.01 5.42 242
## 4 Woman_Traditional 7.93 1.51 9.44 6.42 202
gender_ratings <- analysis %>%
group_by(applicant_gender) %>%
summarise(avg_rating = mean(rating),
standard_dev = sd(rating))
gender_ratings
## # A tibble: 2 × 3
## applicant_gender avg_rating standard_dev
## <fct> <dbl> <dbl>
## 1 man 7.39 1.77
## 2 woman 7.54 1.71
education_ratings <- analysis %>%
group_by(applicant_education) %>%
summarise(avg_rating = mean(rating),
standard_dev = sd(rating))
education_ratings
## # A tibble: 2 × 3
## applicant_education avg_rating standard_dev
## <fct> <dbl> <dbl>
## 1 trad 7.75 1.49
## 2 nontrad 7.19 1.90
ggplot(analysis, aes(x = rating))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$rating), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$rating), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$rating), color = w_nt, linewidth = 1.25)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$rating), color = m_nt)+
geom_vline(xintercept = 5, color = lightgray)+
labs(title = "Distribution of Participant Ratings by Condition",
# subtitle = "Vertical lines indicates average rating",
x = "Rating",
y = "Count")
ggplot(analysis, aes(x = rating))+
geom_bar(stat = "count", aes(fill = Condition))+
scale_fill_manual(values = color_scheme)+
facet_grid(Condition ~ .)+
labs(title = "Rating Distributions by Condition",
x = "Rating",
y = "Count")+
theme(strip.text.y = element_text(angle = 0),
legend.position = "none")
#m_t
ggplot(subset(analysis, Condition == 'Man_Traditional'), aes(x = rating))+
geom_bar(fill = m_t)+
labs(title = "Distributions of Resume Ratings: Man, Traditional",
x = "Rating",
y = "Count")+
geom_vline(xintercept = mean(subset(analysis, Condition == 'Man_Traditional')$rating), color = darkgray)+
theme(strip.text.y = element_text(angle = 0),
legend.position = "none")
#w_t
ggplot(subset(analysis, Condition == 'Woman_Traditional'), aes(x = rating))+
geom_bar(fill = w_t)+
labs(title = "Distributions of Resume Ratings: Woman, Traditional",
x = "Rating",
y = "Count")+
geom_vline(xintercept = mean(subset(analysis, Condition == 'Woman_Traditional')$rating), color = darkgray)+
theme(strip.text.y = element_text(angle = 0),
legend.position = "none")
#m_nt
ggplot(subset(analysis, Condition == 'Man_Traditional'), aes(x = rating))+
geom_bar(fill = m_nt)+
labs(title = "Distributions of Resume Ratings: Man, Non-Traditional",
x = "Rating",
y = "Count")+
geom_vline(xintercept = mean(subset(analysis, Condition == 'Man_Traditional')$rating), color = darkgray)+
theme(strip.text.y = element_text(angle = 0),
legend.position = "none")
#w_nt
ggplot(subset(analysis, Condition == 'Woman_Traditional'), aes(x = rating))+
geom_bar(fill = w_nt)+
labs(title = "Distributions of Resume Ratings: Woman, Non-Traditional",
x = "Rating",
y = "Count")+
geom_vline(xintercept = mean(subset(analysis, Condition == 'Woman_Traditional')$rating), color = darkgray)+
theme(strip.text.y = element_text(angle = 0),
legend.position = "none")
ggplot(analysis, aes(y = rating, x = Condition))+
geom_jitter(aes(color = Condition))+
scale_fill_manual(values = color_scheme)+
scale_color_manual(values = color_scheme)+
theme(legend.position = "none")+
labs(title = "Distribution of Ratings by Condition",
y = "Rating")
## technical scale
analysis %>%
group_by(Condition) %>%
summarise(mean_technical= mean(technical_scale))
## # A tibble: 4 × 2
## Condition mean_technical
## <fct> <dbl>
## 1 Man_Traditional 7.77
## 2 Man_Nontraditional 7.47
## 3 Woman_Nontraditional 7.24
## 4 Woman_Traditional 8.01
ggplot(analysis, aes(x = technical_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$technical_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$technical_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$technical_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$technical_scale), color = m_nt)+
labs(title = "Distribution of Technical Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
## leadership scale
analysis %>%
group_by(Condition) %>%
summarise(mean_leadership= mean(leadership_scale))
## # A tibble: 4 × 2
## Condition mean_leadership
## <fct> <dbl>
## 1 Man_Traditional 6.36
## 2 Man_Nontraditional 6.13
## 3 Woman_Nontraditional 6.19
## 4 Woman_Traditional 6.49
ggplot(analysis, aes(x = leadership_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$leadership_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$leadership_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$leadership_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$leadership_scale), color = m_nt)+
labs(title = "Distribution of Leadership Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
## likeable scale
analysis %>%
group_by(Condition) %>%
summarise(mean_likeable = mean(likeable_scale))
## # A tibble: 4 × 2
## Condition mean_likeable
## <fct> <dbl>
## 1 Man_Traditional 6.53
## 2 Man_Nontraditional 6.48
## 3 Woman_Nontraditional 6.94
## 4 Woman_Traditional 7.21
ggplot(analysis, aes(x = likeable_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$likeable_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$likeable_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$likeable_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$likeable_scale), color = m_nt)+
labs(title = "Distribution of Likeable Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
## learner scale
analysis %>%
group_by(Condition) %>%
summarise(mean_learner = mean(learner_scale))
## # A tibble: 4 × 2
## Condition mean_learner
## <fct> <dbl>
## 1 Man_Traditional 6.86
## 2 Man_Nontraditional 6.83
## 3 Woman_Nontraditional 6.85
## 4 Woman_Traditional 7.21
ggplot(analysis, aes(x = learner_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$learner_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$learner_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$learner_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$learner_scale), color = m_nt)+
labs(title = "Distribution of Learner Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
## education scale
analysis %>%
group_by(Condition) %>%
summarise(mean_education = mean(education_scale))
## # A tibble: 4 × 2
## Condition mean_education
## <fct> <dbl>
## 1 Man_Traditional 7.99
## 2 Man_Nontraditional 5.90
## 3 Woman_Nontraditional 5.82
## 4 Woman_Traditional 8.21
ggplot(analysis, aes(x = education_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$education_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$education_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$education_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$education_scale), color = m_nt)+
labs(title = "Distribution of Education Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
## experience scale
analysis %>%
group_by(Condition) %>%
summarise(mean_experience= mean(experience_scale))
## # A tibble: 4 × 2
## Condition mean_experience
## <fct> <dbl>
## 1 Man_Traditional 7.85
## 2 Man_Nontraditional 7.77
## 3 Woman_Nontraditional 7.40
## 4 Woman_Traditional 8.19
ggplot(analysis, aes(x = experience_scale))+
geom_density(stat = "count",aes(fill = Condition), alpha = 0.8)+
scale_fill_manual(values = color_scheme)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Traditional")$experience_scale), color = w_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Traditional")$experience_scale), color = m_t)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Woman_Nontraditional")$experience_scale), color = w_nt)+
geom_vline(xintercept = mean(subset(analysis, Condition == "Man_Nontraditional")$experience_scale), color = m_nt)+
labs(title = "Distribution of Experience Scale Ratings by Condition",
subtitle = "Vertical lines indicate group means",
x = "Rating",
y = "Count")+
theme(legend.position = "none")
d <- data.table(analysis)
## anova testing
summary(d[, aov(rating ~ Condition)])
## Df Sum Sq Mean Sq F value Pr(>F)
## Condition 3 85.4 28.453 9.662 2.77e-06 ***
## Residuals 941 2771.2 2.945
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## follow-up t-tests, holm correction
d[, pairwise.t.test(rating, Condition, p.adjust.method = "bonferroni")]
##
## Pairwise comparisons using t tests with pooled SD
##
## data: rating and Condition
##
## Man_Traditional Man_Nontraditional Woman_Nontraditional
## Man_Nontraditional 0.033 - -
## Woman_Nontraditional 0.070 1.000 -
## Woman_Traditional 0.279 2.1e-05 7.2e-05
##
## P value adjustment method: bonferroni
## linear model
m0 <- d[, lm(rating ~ Condition)]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m0)
bptest(m0)
##
## studentized Breusch-Pagan test
##
## data: m0
## BP = 20.076, df = 3, p-value = 0.0001637
m0$vcovHC_ <- vcovHC(m0)
coefs_conditions <- coeftest(m0, vcov. = m0$vcovHC_)
coefs_conditions
##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.604938 0.094417 80.5462 < 2.2e-16 ***
## ConditionMan_Nontraditional -0.426644 0.155866 -2.7373 0.006312 **
## ConditionWoman_Nontraditional -0.394194 0.149263 -2.6409 0.008405 **
## ConditionWoman_Traditional 0.325755 0.142221 2.2905 0.022214 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_conditions <- coefci(m0, vcov. = m0$vcovHC_)
ci_conditions
## 2.5 % 97.5 %
## (Intercept) 7.41964581 7.7902307
## ConditionMan_Nontraditional -0.73252792 -0.1207595
## ConditionWoman_Nontraditional -0.68712226 -0.1012667
## ConditionWoman_Traditional 0.04664698 0.6048626
Based on the previous tests, we can detect that there are
significant differences between conditions. This result is shown in the
ANOVA test, for which post hoc testing indicates
differences between the Woman_Traditional condition and the
conditions Man_Nontraditional and
Woman_Nontraditional. We follow this testing with linear
models to more clearly capture the quantitative differences between
ratings.
Specifically, the baseline candidate received a rating, on average of 7.6 (7.42, 7.79). In comparison, men with a nontraditional education were rated lower, by an average of -0.43 (-0.73, -0.12). Women with a nontraditional education were also reated lower than men with a traditional education, by an average of -0.39 (-0.69, -0.1). Finally, women with a traditional education were actually rated higher than men with a traditional education, by an average of 0.33 (0.05, 0.6).
The previous analysis focused specifically on the conditions shown.
we are also interested in the qualities of these conditions, such as the
applicant_gender & applicant_education
variables. This will give us a clearer statistical understanding of the
input of each quality of the applicant. At this point forward, we use
linear models, rather than ANOVA and t-testing. This is to make the
content more consistent with the techniques learned in the course.
m1 <- d[gender == "Man" | gender == "Woman", lm(rating ~ applicant_gender * applicant_education)]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m1)
bptest(m1)
##
## studentized Breusch-Pagan test
##
## data: m1
## BP = 20.086, df = 3, p-value = 0.0001629
m1$vcovHC_ <- vcovHC(m1)
coefs_applicants <- coeftest(m1, vcov. = m1$vcovHC_)
coefs_applicants
##
## t test of coefficients:
##
## Estimate Std. Error t value
## (Intercept) 7.604938 0.094417 80.5462
## applicant_genderwoman 0.323996 0.143717 2.2544
## applicant_educationnontrad -0.447458 0.157028 -2.8495
## applicant_genderwoman:applicant_educationnontrad -0.422917 0.225062 -1.8791
## Pr(>|t|)
## (Intercept) < 2.2e-16 ***
## applicant_genderwoman 0.024408 *
## applicant_educationnontrad 0.004477 **
## applicant_genderwoman:applicant_educationnontrad 0.060548 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_applicants <- coefci(m1, vcov. = m1$vcovHC_)
ci_applicants
## 2.5 % 97.5 %
## (Intercept) 7.41963822 7.79023832
## applicant_genderwoman 0.04194096 0.60605052
## applicant_educationnontrad -0.75563560 -0.13928031
## applicant_genderwoman:applicant_educationnontrad -0.86461727 0.01878228
In this case, we observe a significant effect of gender overall, but in the opposite direction which we expected. Women, on average, receive a higher rating than men (0.3239957 higher, p = 0.0244077). We also see a slight effect of education (p = 0.0044767). Specifically, the applicants with a nontraditional education background are rated -0.447458 lower than those with traditional educations. There is no interaction effect observed (p = 0.0605475).
m2 <- d[gender == "Man" | gender == "Woman", lm(rating ~ applicant_gender * applicant_education + risk)]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m2)
bptest(m2)
##
## studentized Breusch-Pagan test
##
## data: m2
## BP = 24.62, df = 4, p-value = 5.999e-05
m2$vcovHC_ <- vcovHC(m2)
coefs_risk <- coeftest(m2, vcov. = m2$vcovHC_)
coefs_risk
##
## t test of coefficients:
##
## Estimate Std. Error t value
## (Intercept) 7.822693 0.328654 23.8022
## applicant_genderwoman 0.322789 0.143967 2.2421
## applicant_educationnontrad -0.448411 0.157228 -2.8520
## risk -0.049499 0.070949 -0.6977
## applicant_genderwoman:applicant_educationnontrad -0.409412 0.226607 -1.8067
## Pr(>|t|)
## (Intercept) < 2.2e-16 ***
## applicant_genderwoman 0.025195 *
## applicant_educationnontrad 0.004443 **
## risk 0.485563
## applicant_genderwoman:applicant_educationnontrad 0.071138 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_risk <- coefci(m2, vcov. = m2$vcovHC_)
ci_risk
## 2.5 % 97.5 %
## (Intercept) 7.17768578 8.46770028
## applicant_genderwoman 0.04024293 0.60533414
## applicant_educationnontrad -0.75698235 -0.13983984
## risk -0.18874190 0.08974395
## applicant_genderwoman:applicant_educationnontrad -0.85414388 0.03532005
We add risk aversion scores to the model to capture individual differences in regards to the amount of risk one may be confortable taking on. It does not change the estimations from the previous model.
m3 <- d[, lm(rating ~ applicant_gender * applicant_education + risk + applicant_gender * factor(gender, levels = c("Man", "Woman")))]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m3)
bptest(m3)
##
## studentized Breusch-Pagan test
##
## data: m3
## BP = 29.243, df = 6, p-value = 5.472e-05
m3$vcovHC_ <- vcovHC(m3)
coefs_gender <- coeftest(m3, vcov. = m3$vcovHC_)
coefs_gender
##
## t test of coefficients:
##
## Estimate
## (Intercept) 7.708639
## applicant_genderwoman 0.442589
## applicant_educationnontrad -0.446486
## risk -0.026661
## factor(gender, levels = c("Man", "Woman"))Woman 0.056924
## applicant_genderwoman:applicant_educationnontrad -0.425120
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -0.490556
## Std. Error
## (Intercept) 0.331472
## applicant_genderwoman 0.154948
## applicant_educationnontrad 0.156795
## risk 0.071787
## factor(gender, levels = c("Man", "Woman"))Woman 0.182739
## applicant_genderwoman:applicant_educationnontrad 0.227016
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.284163
## t value
## (Intercept) 23.2557
## applicant_genderwoman 2.8564
## applicant_educationnontrad -2.8476
## risk -0.3714
## factor(gender, levels = c("Man", "Woman"))Woman 0.3115
## applicant_genderwoman:applicant_educationnontrad -1.8726
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -1.7263
## Pr(>|t|)
## (Intercept) < 2.2e-16
## applicant_genderwoman 0.004383
## applicant_educationnontrad 0.004505
## risk 0.710431
## factor(gender, levels = c("Man", "Woman"))Woman 0.755489
## applicant_genderwoman:applicant_educationnontrad 0.061438
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.084630
##
## (Intercept) ***
## applicant_genderwoman **
## applicant_educationnontrad **
## risk
## factor(gender, levels = c("Man", "Woman"))Woman
## applicant_genderwoman:applicant_educationnontrad .
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_gender <- coefci(m3, vcov. = m3$vcovHC_)
ci_gender
## 2.5 %
## (Intercept) 7.0580986
## applicant_genderwoman 0.1384908
## applicant_educationnontrad -0.7542085
## risk -0.1675483
## factor(gender, levels = c("Man", "Woman"))Woman -0.3017156
## applicant_genderwoman:applicant_educationnontrad -0.8706555
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -1.0482485
## 97.5 %
## (Intercept) 8.35917895
## applicant_genderwoman 0.74668696
## applicant_educationnontrad -0.13876451
## risk 0.11422594
## factor(gender, levels = c("Man", "Woman"))Woman 0.41556348
## applicant_genderwoman:applicant_educationnontrad 0.02041629
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.06713614
m4 <- d[, lm(rating ~ applicant_gender * applicant_education + risk +
applicant_gender * factor(gender, levels = c("Man", "Woman"))+
factor(company_size))]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m4)
bptest(m4)
##
## studentized Breusch-Pagan test
##
## data: m4
## BP = 48.039, df = 10, p-value = 6.106e-07
m4$vcovHC_ <- vcovHC(m4)
coefs_company <- coeftest(m4, vcov. = m4$vcovHC_)
coefs_company
##
## t test of coefficients:
##
## Estimate
## (Intercept) 7.8120332
## applicant_genderwoman 0.4605872
## applicant_educationnontrad -0.4530964
## risk -0.0209722
## factor(gender, levels = c("Man", "Woman"))Woman -0.0031159
## factor(company_size)100-500 employees -0.4252463
## factor(company_size)50-100 employees -0.1908751
## factor(company_size)500-1,000 employees 0.1479917
## factor(company_size)Less than 50 employees -0.1296298
## applicant_genderwoman:applicant_educationnontrad -0.4019270
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -0.4735862
## Std. Error
## (Intercept) 0.3286516
## applicant_genderwoman 0.1524847
## applicant_educationnontrad 0.1572225
## risk 0.0721672
## factor(gender, levels = c("Man", "Woman"))Woman 0.1874127
## factor(company_size)100-500 employees 0.1596861
## factor(company_size)50-100 employees 0.2267440
## factor(company_size)500-1,000 employees 0.1664959
## factor(company_size)Less than 50 employees 0.1555929
## applicant_genderwoman:applicant_educationnontrad 0.2307918
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.2838319
## t value
## (Intercept) 23.7700
## applicant_genderwoman 3.0205
## applicant_educationnontrad -2.8819
## risk -0.2906
## factor(gender, levels = c("Man", "Woman"))Woman -0.0166
## factor(company_size)100-500 employees -2.6630
## factor(company_size)50-100 employees -0.8418
## factor(company_size)500-1,000 employees 0.8889
## factor(company_size)Less than 50 employees -0.8331
## applicant_genderwoman:applicant_educationnontrad -1.7415
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -1.6685
## Pr(>|t|)
## (Intercept) < 2.2e-16
## applicant_genderwoman 0.002594
## applicant_educationnontrad 0.004047
## risk 0.771419
## factor(gender, levels = c("Man", "Woman"))Woman 0.986739
## factor(company_size)100-500 employees 0.007882
## factor(company_size)50-100 employees 0.400118
## factor(company_size)500-1,000 employees 0.374314
## factor(company_size)Less than 50 employees 0.404989
## applicant_genderwoman:applicant_educationnontrad 0.081933
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.095554
##
## (Intercept) ***
## applicant_genderwoman **
## applicant_educationnontrad **
## risk
## factor(gender, levels = c("Man", "Woman"))Woman
## factor(company_size)100-500 employees **
## factor(company_size)50-100 employees
## factor(company_size)500-1,000 employees
## factor(company_size)Less than 50 employees
## applicant_genderwoman:applicant_educationnontrad .
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_company <- coefci(m4, vcov. = m4$vcovHC_)
ci_company
## 2.5 %
## (Intercept) 7.1670253
## applicant_genderwoman 0.1613224
## applicant_educationnontrad -0.7616595
## risk -0.1626068
## factor(gender, levels = c("Man", "Woman"))Woman -0.3709299
## factor(company_size)100-500 employees -0.7386445
## factor(company_size)50-100 employees -0.6358804
## factor(company_size)500-1,000 employees -0.1787712
## factor(company_size)Less than 50 employees -0.4349947
## applicant_genderwoman:applicant_educationnontrad -0.8548764
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -1.0306313
## 97.5 %
## (Intercept) 8.45704101
## applicant_genderwoman 0.75985193
## applicant_educationnontrad -0.14453326
## risk 0.12066235
## factor(gender, levels = c("Man", "Woman"))Woman 0.36469814
## factor(company_size)100-500 employees -0.11184805
## factor(company_size)50-100 employees 0.25413025
## factor(company_size)500-1,000 employees 0.47475464
## factor(company_size)Less than 50 employees 0.17573501
## applicant_genderwoman:applicant_educationnontrad 0.05102232
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.08345903
m5 <- d[, lm(rating ~ applicant_gender * applicant_education + risk +
applicant_gender * factor(gender, levels = c("Man", "Woman"))+
factor(company_size) +
technical_scale +
leadership_scale +
likeable_scale +
learner_scale +
education_scale +
experience_scale)]
# test for heteroscedasticity to determine if use of robust standard errors is justified
par(mfrow = c(2, 2))
plot(m5)
bptest(m5)
##
## studentized Breusch-Pagan test
##
## data: m5
## BP = 79.681, df = 16, p-value = 1.899e-10
m5$vcovHC_ <- vcovHC(m5)
coefs_measures <- coeftest(m5, vcov. = m5$vcovHC_)
coefs_measures
##
## t test of coefficients:
##
## Estimate
## (Intercept) 1.833931
## applicant_genderwoman 0.155441
## applicant_educationnontrad -0.063456
## risk -0.024555
## factor(gender, levels = c("Man", "Woman"))Woman -0.092787
## factor(company_size)100-500 employees -0.132663
## factor(company_size)50-100 employees -0.264659
## factor(company_size)500-1,000 employees 0.093538
## factor(company_size)Less than 50 employees 0.113091
## technical_scale 0.361614
## leadership_scale 0.049826
## likeable_scale 0.032400
## learner_scale 0.060149
## education_scale 0.102807
## experience_scale 0.172275
## applicant_genderwoman:applicant_educationnontrad -0.064606
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -0.071341
## Std. Error
## (Intercept) 0.425253
## applicant_genderwoman 0.120806
## applicant_educationnontrad 0.125803
## risk 0.056467
## factor(gender, levels = c("Man", "Woman"))Woman 0.154783
## factor(company_size)100-500 employees 0.114750
## factor(company_size)50-100 employees 0.190844
## factor(company_size)500-1,000 employees 0.135162
## factor(company_size)Less than 50 employees 0.131889
## technical_scale 0.049572
## leadership_scale 0.039168
## likeable_scale 0.041539
## learner_scale 0.042559
## education_scale 0.026657
## experience_scale 0.043628
## applicant_genderwoman:applicant_educationnontrad 0.177337
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.233004
## t value
## (Intercept) 4.3126
## applicant_genderwoman 1.2867
## applicant_educationnontrad -0.5044
## risk -0.4348
## factor(gender, levels = c("Man", "Woman"))Woman -0.5995
## factor(company_size)100-500 employees -1.1561
## factor(company_size)50-100 employees -1.3868
## factor(company_size)500-1,000 employees 0.6920
## factor(company_size)Less than 50 employees 0.8575
## technical_scale 7.2947
## leadership_scale 1.2721
## likeable_scale 0.7800
## learner_scale 1.4133
## education_scale 3.8567
## experience_scale 3.9488
## applicant_genderwoman:applicant_educationnontrad -0.3643
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -0.3062
## Pr(>|t|)
## (Intercept) 1.792e-05
## applicant_genderwoman 0.1985308
## applicant_educationnontrad 0.6140999
## risk 0.6637773
## factor(gender, levels = c("Man", "Woman"))Woman 0.5490117
## factor(company_size)100-500 employees 0.2479452
## factor(company_size)50-100 employees 0.1658517
## factor(company_size)500-1,000 employees 0.4890901
## factor(company_size)Less than 50 employees 0.3914128
## technical_scale 6.572e-13
## leadership_scale 0.2036648
## likeable_scale 0.4356137
## learner_scale 0.1579087
## education_scale 0.0001231
## experience_scale 8.470e-05
## applicant_genderwoman:applicant_educationnontrad 0.7157116
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.7595400
##
## (Intercept) ***
## applicant_genderwoman
## applicant_educationnontrad
## risk
## factor(gender, levels = c("Man", "Woman"))Woman
## factor(company_size)100-500 employees
## factor(company_size)50-100 employees
## factor(company_size)500-1,000 employees
## factor(company_size)Less than 50 employees
## technical_scale ***
## leadership_scale
## likeable_scale
## learner_scale
## education_scale ***
## experience_scale ***
## applicant_genderwoman:applicant_educationnontrad
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ci_measures <- coefci(m5, vcov. = m5$vcovHC_)
ci_measures
## 2.5 %
## (Intercept) 0.99932635
## applicant_genderwoman -0.08165403
## applicant_educationnontrad -0.31035706
## risk -0.13537704
## factor(gender, levels = c("Man", "Woman"))Woman -0.39656474
## factor(company_size)100-500 employees -0.35787097
## factor(company_size)50-100 employees -0.63920931
## factor(company_size)500-1,000 employees -0.17173197
## factor(company_size)Less than 50 employees -0.14575533
## technical_scale 0.26432297
## leadership_scale -0.02704551
## likeable_scale -0.04912609
## learner_scale -0.02337718
## education_scale 0.05049045
## experience_scale 0.08665097
## applicant_genderwoman:applicant_educationnontrad -0.41264925
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman -0.52863623
## 97.5 %
## (Intercept) 2.66853650
## applicant_genderwoman 0.39253666
## applicant_educationnontrad 0.18344574
## risk 0.08626794
## factor(gender, levels = c("Man", "Woman"))Woman 0.21099014
## factor(company_size)100-500 employees 0.09254566
## factor(company_size)50-100 employees 0.10989213
## factor(company_size)500-1,000 employees 0.35880720
## factor(company_size)Less than 50 employees 0.37193781
## technical_scale 0.45890547
## leadership_scale 0.12669695
## likeable_scale 0.11392520
## learner_scale 0.14367580
## education_scale 0.15512297
## experience_scale 0.25789904
## applicant_genderwoman:applicant_educationnontrad 0.28343742
## applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman 0.38595473
anova(m1, m2, m3, m4, m5)
## Analysis of Variance Table
##
## Model 1: rating ~ applicant_gender * applicant_education
## Model 2: rating ~ applicant_gender * applicant_education + risk
## Model 3: rating ~ applicant_gender * applicant_education + risk + applicant_gender *
## factor(gender, levels = c("Man", "Woman"))
## Model 4: rating ~ applicant_gender * applicant_education + risk + applicant_gender *
## factor(gender, levels = c("Man", "Woman")) + factor(company_size)
## Model 5: rating ~ applicant_gender * applicant_education + risk + applicant_gender *
## factor(gender, levels = c("Man", "Woman")) + factor(company_size) +
## technical_scale + leadership_scale + likeable_scale + learner_scale +
## education_scale + experience_scale
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 912 2677.0
## 2 911 2675.4 1 1.58 0.9064 0.3413197
## 3 909 2661.4 2 14.05 4.0260 0.0181688 *
## 4 905 2627.6 4 33.78 4.8378 0.0007287 ***
## 5 899 1569.2 6 1058.36 101.0543 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
stargazer(
m1,
m2,
m3,
m4,
m5,
type = 'html',
se = list(sqrt(diag(m1$vcovHC_)),
sqrt(diag(m2$vcovHC_)),
sqrt(diag(m3$vcovHC_)),
sqrt(diag(m4$vcovHC_)),
sqrt(diag(m5$vcovHC_))
),
# header=FALSE,
single.row = TRUE,
no.space = TRUE
)
##
## <table style="text-align:center"><tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"></td><td colspan="5"><em>Dependent variable:</em></td></tr>
## <tr><td></td><td colspan="5" style="border-bottom: 1px solid black"></td></tr>
## <tr><td style="text-align:left"></td><td colspan="5">rating</td></tr>
## <tr><td style="text-align:left"></td><td>(1)</td><td>(2)</td><td>(3)</td><td>(4)</td><td>(5)</td></tr>
## <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">applicant_genderwoman</td><td>0.324<sup>**</sup> (0.144)</td><td>0.323<sup>**</sup> (0.144)</td><td>0.443<sup>***</sup> (0.155)</td><td>0.461<sup>***</sup> (0.152)</td><td>0.155 (0.121)</td></tr>
## <tr><td style="text-align:left">applicant_educationnontrad</td><td>-0.447<sup>***</sup> (0.157)</td><td>-0.448<sup>***</sup> (0.157)</td><td>-0.446<sup>***</sup> (0.157)</td><td>-0.453<sup>***</sup> (0.157)</td><td>-0.063 (0.126)</td></tr>
## <tr><td style="text-align:left">risk</td><td></td><td>-0.049 (0.071)</td><td>-0.027 (0.072)</td><td>-0.021 (0.072)</td><td>-0.025 (0.056)</td></tr>
## <tr><td style="text-align:left">factor(gender, levels = c("Man", "Woman"))Woman</td><td></td><td></td><td>0.057 (0.183)</td><td>-0.003 (0.187)</td><td>-0.093 (0.155)</td></tr>
## <tr><td style="text-align:left">factor(company_size)100-500 employees</td><td></td><td></td><td></td><td>-0.425<sup>***</sup> (0.160)</td><td>-0.133 (0.115)</td></tr>
## <tr><td style="text-align:left">factor(company_size)50-100 employees</td><td></td><td></td><td></td><td>-0.191 (0.227)</td><td>-0.265 (0.191)</td></tr>
## <tr><td style="text-align:left">factor(company_size)500-1,000 employees</td><td></td><td></td><td></td><td>0.148 (0.166)</td><td>0.094 (0.135)</td></tr>
## <tr><td style="text-align:left">factor(company_size)Less than 50 employees</td><td></td><td></td><td></td><td>-0.130 (0.156)</td><td>0.113 (0.132)</td></tr>
## <tr><td style="text-align:left">technical_scale</td><td></td><td></td><td></td><td></td><td>0.362<sup>***</sup> (0.050)</td></tr>
## <tr><td style="text-align:left">leadership_scale</td><td></td><td></td><td></td><td></td><td>0.050 (0.039)</td></tr>
## <tr><td style="text-align:left">likeable_scale</td><td></td><td></td><td></td><td></td><td>0.032 (0.042)</td></tr>
## <tr><td style="text-align:left">learner_scale</td><td></td><td></td><td></td><td></td><td>0.060 (0.043)</td></tr>
## <tr><td style="text-align:left">education_scale</td><td></td><td></td><td></td><td></td><td>0.103<sup>***</sup> (0.027)</td></tr>
## <tr><td style="text-align:left">experience_scale</td><td></td><td></td><td></td><td></td><td>0.172<sup>***</sup> (0.044)</td></tr>
## <tr><td style="text-align:left">applicant_genderwoman:applicant_educationnontrad</td><td>-0.423<sup>*</sup> (0.225)</td><td>-0.409<sup>*</sup> (0.227)</td><td>-0.425<sup>*</sup> (0.227)</td><td>-0.402<sup>*</sup> (0.231)</td><td>-0.065 (0.177)</td></tr>
## <tr><td style="text-align:left">applicant_genderwoman:factor(gender, levels = c("Man", "Woman"))Woman</td><td></td><td></td><td>-0.491<sup>*</sup> (0.284)</td><td>-0.474<sup>*</sup> (0.284)</td><td>-0.071 (0.233)</td></tr>
## <tr><td style="text-align:left">Constant</td><td>7.605<sup>***</sup> (0.094)</td><td>7.823<sup>***</sup> (0.329)</td><td>7.709<sup>***</sup> (0.331)</td><td>7.812<sup>***</sup> (0.329)</td><td>1.834<sup>***</sup> (0.425)</td></tr>
## <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Observations</td><td>916</td><td>916</td><td>916</td><td>916</td><td>916</td></tr>
## <tr><td style="text-align:left">R<sup>2</sup></td><td>0.038</td><td>0.039</td><td>0.044</td><td>0.056</td><td>0.436</td></tr>
## <tr><td style="text-align:left">Adjusted R<sup>2</sup></td><td>0.035</td><td>0.034</td><td>0.037</td><td>0.045</td><td>0.426</td></tr>
## <tr><td style="text-align:left">Residual Std. Error</td><td>1.713 (df = 912)</td><td>1.714 (df = 911)</td><td>1.711 (df = 909)</td><td>1.704 (df = 905)</td><td>1.321 (df = 899)</td></tr>
## <tr><td style="text-align:left">F Statistic</td><td>12.019<sup>***</sup> (df = 3; 912)</td><td>9.144<sup>***</sup> (df = 4; 911)</td><td>6.915<sup>***</sup> (df = 6; 909)</td><td>5.347<sup>***</sup> (df = 10; 905)</td><td>43.454<sup>***</sup> (df = 16; 899)</td></tr>
## <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"><em>Note:</em></td><td colspan="5" style="text-align:right"><sup>*</sup>p<0.1; <sup>**</sup>p<0.05; <sup>***</sup>p<0.01</td></tr>
## </table>
ggplot(subset(analysis, gender == "Man" | gender == "Woman"), aes(y = technical_scale, x = applicant_education))+
geom_jitter(aes(color = Condition), alpha = 0.5)+
geom_boxplot(alpha = 0.8, aes(fill = Condition))+
scale_fill_manual(values = color_scheme)+
scale_color_manual(values = color_scheme)+
scale_x_discrete(labels = c("Traditional", "Non-Traditional"))+
labs(title = "Comparison of Technical Ratings between Conditions",
subtitle = "Grouped by Education & Participant Gender",
y = "Technical Scale Rating\n",
x = "\nApplicant Education")+
theme(legend.position = "none")+
facet_grid(~ gender)
ggplot(subset(analysis, gender == "Man" | gender == "Woman"), aes(y = education_scale, x = applicant_education))+
geom_jitter(aes(color = Condition), alpha = 0.5)+
geom_boxplot(alpha = 0.8, aes(fill = Condition))+
scale_fill_manual(values = color_scheme)+
scale_color_manual(values = color_scheme)+
scale_x_discrete(labels = c("Traditional", "Non-Traditional"))+
labs(title = "Comparison of Relevant Education Ratings between Conditions",
subtitle = "Grouped by Education & Participant Gender",
y = "Education Scale Rating\n",
x = "\nApplicant Education")+
theme(legend.position = "none")+
facet_grid(~ gender)
ggplot(subset(analysis, gender == "Man" | gender == "Woman"), aes(y = experience_scale, x = applicant_gender))+
geom_jitter(aes(color = Condition), alpha = 0.5)+
geom_boxplot(alpha = 0.8, aes(fill = Condition))+
scale_fill_manual(values = color_scheme)+
scale_color_manual(values = color_scheme)+
scale_x_discrete(labels = c("Man", "Woman"))+
labs(title = "Comparison of Relevant Experience Ratings between Conditions",
subtitle = "Grouped by Gender & Participant Gender",
y = "Experience Scale Rating\n",
x = "\nApplicant Gender")+
theme(legend.position = "none")+
facet_grid(~ gender)
ggplot(subset(analysis, gender == "Man" | gender == "Woman"), aes(y = rating, x = applicant_gender))+
geom_jitter(aes(color = gender), alpha = 0.8)+
scale_color_manual(values = c(m_t, w_t))+
geom_boxplot(alpha = 0.8, aes(fill = gender))+
scale_fill_manual(values = c(m_t, w_t))+
facet_grid(.~ gender)